#ifndef _core_switch_default_hpp_
#define _core_switch_default_hpp_

/** \file default.hpp
 *  \author Adrian Schweizer
 *  \created  $Mo 11 Feb 08:33:01 pm CET 2008 schwadri@SchwadriLaptop.local$
 *  \modified $Mo 11 Feb 08:35:00 pm CET 2008 schwadri@SchwadriLaptop.local$
 */

#include "case_sequence.hpp"

namespace core {

    struct  default_label_tag;
    struct  default_label
    {
        typedef default_label_tag   tag;
    };

    template <typename Functor>
        case_sequence<default_label,Functor> default_(const Functor& functor)
        {
            return case_sequence<default_label,Functor>(functor);
        }

} // namespace core

#endif // _core_switch_default_hpp_
